The present invention relates to a virtual space information processor to which a plurality of client terminals can be connected and which achieves real time processing of requests from individual client terminals even when many client terminals are connected.
Recently, virtual space information processors have been widely used, wherein virtual spaces, such as a virtual shopping mall and the like, are created with a computer, and data relating to the virtual spaces are transmitted to produce images of the virtual spaces which are displayed on display devices of client terminals, using computer graphics, data bases, and the like. At present, a virtual space information processor which, in response to requests received from client terminals, loads programs (referred to as modules hereafter) that have been prepared for individual functions, on to a memory, and executes the programs (referred to as processes hereafter) to perform processes corresponding to individual requests is known as a widely used virtual space information processor.
However, with a conventional virtual space information processor, a module is read out from a storage device and loaded on the memory, then a process corresponding to a request from an individual client terminal is executed each time that a request for data transmission or the like is received from a client terminal. This requires an enormous amount of time for responding to a single request. Thus, a request from a client terminal can not be handled on a real-time basis, which eventually irritates the user operating the client terminal. The problem becomes worse when a plurality of client terminals are connected.
In addition, a plurality of modules for the same function must be loaded on the memory in conventional virtual space information processors since a module is loaded on the memory each time that a request is received from an individual client terminal, which means that most of the memory is consumed by modules. Therefore, a very large memory capacity is required to process requests from a plurality of client terminals.
Furthermore, a very long processing time has been required for conventional virtual space information processors because process communication between individual processes on the memory is necessary to transmit to individual client terminals data that is consistent with regard to the virtual space. Therefore, processing or responding to a plurality of client terminals has been difficult and there has been a limit to the number of client terminals that can be connected.
The above-mentioned problems with regard to processing time or the memory resource can be solved either by physically enhancing the memory or CPU of the virtual space information processor, or by adding a large number of processor apparatuses. However, these measures are not acceptable solutions to the problems, described above because of the huge increase in cost due to necessity of enhanced memory or providing additional devices.
To overcome the problems described above, the preferred embodiments of the present invention provide a virtual space information processor that is capable of processing requests from individual client terminals on a real time basis when a plurality of client terminals are connected, as well as being able to connect a plurality of client terminals with a relatively small scale hardware resource.
A virtual space information processor according to preferred embodiments of the present invention has all of the modules for processing requests from client terminals pre-loaded on a memory. Therefore, loading a module each time a process is requested from a client terminal becomes unnecessary with the above-described preferred embodiment, which results in a significantly reduced response time.
The preferred embodiments of the present invention include a request-storing module which stores more than one request from client terminals and a space definition data-updating module which updates, according to requests from client terminals, the data defining the virtual space. The space definition data-updating module does not start processing requests from other client terminals until the processing of the request from a first of the client terminals is completed, which ensures that consistent virtual space data is available to each of the individual client terminals.
Furthermore, the preferred embodiments of the present invention include a request processing control module which selects an appropriate module for processing a request stored in the request-storing module and instructs the selected module to process the request. Thus, processing instructions can be transmitted smoothly to the appropriate module, which results in a significantly reduced response time.
Additionally, according to preferred embodiments of the present invention, processing instructions from the request processing control module to individual modules are transmitted via a connection interface. Thus, processing instructions are transmitted even more smoothly to the appropriate module, which results in an even greater reduction in response time.
Furthermore, modules of the same type are not double-loaded on the memory, which prevents waste of memory caused by duplication of modules.